The present invention relates to providing filtered digital images with reduced noise.
Many noise reduction algorithms can be classified as non-linear spatial filters image processing algorithms. Most often these algorithms involve using the pixel values in a small local surrounding neighborhood to the pixel of interest combined with some form of non-linear weighting and/or statistical conditions applied to derive a noise free estimate. The small local surrounding neighborhood is usually centered on the pixel of interest. For this class of noise reduction algorithm the filter size is fixed, meaning that all image pixels are processed with the same size local surrounding neighborhood size.
An example of a fixed size noise reduction algorithm is the Sigma Filter, described by Jon Son Lee in the journal article Digital Image Smoothing and the Sigma Filter, Computer Vision, Graphics, and Image Processing Vol 24, p. 255-269, 1983. This is a noise reduction filter that uses a non-linear pixel averaging technique sampled from a rectangular window about the center pixel. Pixels in the local neighborhood are either included or excluded from the numerical average on the basis of the difference between the pixel and the center pixel. Mathematically, the Sigma Filter can be represented as
xe2x80x83qmn=xcexa3ijaijpij/xcexa3ijaij
and
aij=1 if |pijxe2x88x92pmn| less than =xcex5
aij=0 if |pijxe2x88x92pmn| greater than xcex5
where pij represents the pixels in the local surround about the center pixel pmn, qmn represents the noise cleaned pixel, and e represents a numerical constant usually set to two times the expected noise standard deviation.
The Sigma Filter was designed for image processing applications for which the dominant noise source is Gaussian additive noise. Signal dependent noise sources can easily be incorporated by making the e parameter a function of the signal strength. However, for both signal independent and signal dependent noise cases the expected noise standard deviation must be known to obtain optimal results. The Sigma Filter performs well on highly structured areas due to the fact that most of the image pixels in the local neighborhood are excluded from the averaging process. This leaves high signal strength regions nearly unaltered. The filter also works well in large uniform areas devoid of image signal structure due to the fact that most of the local pixels are included in the averaging process. For these regions, the Sigma Filter behaves nearly as a low pass spatial filter.
Regions in images characterized by low amplitude signal modulation, or low signal strength, are not served well by the Sigma Filter. For these regions, most of the local pixel values are included in the averaging process thus resulting in a loss of signal modulation. Setting the threshold of the filter to a lower value does reduce the loss of signal, however, the noise is left mostly the same.
Another example of a fixed size non-linear noise filter was reported by Arce and McLoughlin in the journal article Theoretical Analysis of the Max/Median Filter, IEEE Transactions Acoustical and Speech Signal; Processing, ASSP-35(1), p. 60-69, 1987 they named the Max/Median Filter. This filter separated the local surround region into four overlapping regionsxe2x80x94horizontal, vertical, and two diagonal pixels with each region containing the center pixel. A pixel estimate was calculated for each region separately by applying a taking the statistical median pixel value, sampled from the regions"" pixel values. Of these four pixel estimates, the maximum valued estimate was chosen as the noise cleaned pixel. Mathematically the Max/Median Filter can be represented as
qij=maximum of {Z1, Z2, Z3, Z4}
Z1=median of {pi,jxe2x88x92w, . . . pi,j, . . . , pi,j+w}
Z2=median of {pixe2x88x92w,j, . . . pi,j, . . . , pi+w,j}
Z3=median of {pi+w,jxe2x88x92w, . . . pi,j, . . . , pixe2x88x92w,j+w}
Z4=median of {pixe2x88x92w,jxe2x88x92w, . . . pi,j, . . . , pi+w,j+w}
Where qij represents the noise cleaned pixel, Z1, Z2, Z3, and Z4 represent the four pixel estimates, and pij represents the local pixel values. The Max/Median Filter also reduces the noise present while preserving edges. For Gaussian additive noise, the statistical median value does not reduce the noise by as great a factor as numerical averaging. However, this filter does work well on non-Gaussian additive noise such as spurious noise.
Noise is most visible and objectionable in images containing areas with little signal structure, e.g. blue sky regions with little or no clouds. The Sigma filter can produce a blotchy, or mottled, effect when applied image regions characterized by low signal content. This is largely due to the rectangular geometric sampling of local pixels strategy. The radial region sampling strategy employed by the Max/Median Filter produces noise reduced images will less objectionable artifacts in image regions characterized by low signal content. For images with high noise content, the artifacts produced by radial region sampling strategy have a structured appearance.
U.S. Pat. No. 5,671,264 describes a variation of the Sigma Filter and Max/Median Filter. This algorithm borrows the technique of radial spatial sampling and multiple pixel estimates from the Max/Median Filter. However, the algorithm expands the number of radial line segment to include configurations with more than four segments. The algorithm uses combinations of Sigma and Median filters to form the individual region pixel estimates. These pixel estimates derived from the N regions are then combined by numerical averaging or taking the statistical median value to form the noise cleaned pixel value. A key component of this algorithm is the randomization of one of the three essential region parameters: length, orientation, and number of regions. The randomization of the filter parameters is performed on a pixel to pixel basis thus changing the inherent characteristics with pixel location. It is claimed that the randomization feature reduces the induced structured artifacts produced by the radial region geometry sampling method. The algorithm described in U.S. Pat. No. 5,671,264 can be categorized as a variable size non-linear noise filter.
In commonly-assigned U.S. Pat. No. 6,104,839, Cok, Gray, and Matreaszek describe a method of correcting defect pixels in digital images. Although this algorithm was not intended for the reduction of noise of digital images, it employed a pixel region growing technique, that is relevant for noise reduction algorithms. In this algorithm, a defect pixel (the original pixel value has been lost by a scratch or other defect) is replaced by an estimate formed from the surrounding non-defect pixels. A pixel estimate is formed from applying a structural model to the non-defect pixel values contained in a line segment passing through the defect pixel location. Each line segment is grown in a radial direction away from the defect pixel until a statistical condition is satisfied. The line segments comprising the filter are of variable length based on the image pixel values. Multiple line segments are used and the corresponding multiple pixel estimates are used to form a defect-corrected pixel value. Unlike noise reduction algorithms, the pixel defect correction algorithm is only applied to a small collection of defect pixels. The purpose of this algorithm is the reconstruction of lost pixel or corrupted pixels.
A. Lev, S. W. Zucker, and A. Rosenfeld, described two noise reduction algorithms in their journal article Iterative Enhancement of Noisy Images, IEEE Trans. Sysst. Man and Cybem. SCM-7, p. 435-441, 1977. Both these algorithms were based on edge sensitive local weighted averaging techniques. In the first algorithm, local pixel weights are assigned based on the presence or non-presence of edges produced with an edge detection algorithm. Pixels located on edges do not effect the local averaging process. Additionally, non-edge pixels separated from the center pixel by an edge pixel are also excluded (given a weight of zero). In this regard, only the region of non-edge pixels surrounding the center pixel is used to form the noise free pixel estimate. The second algorithm involved a generalization of the edge detection logic that formed the local pixel weights by combining the coefficients derived from four directional gradients filters, i.e. a horizontal, vertical and two diagonal gradient filters. The output of the directional gradient filters were transformed with an exponential function and combined in a multiplicative model to form the final 3 by 3 spatial filter. This filter is actually a filter of filtered responses. Both of the Lev et. al. filters reduce noise in images but must be applied iteratively to have much effect due to small filter size (3xc3x973). Although these filters used a fixed size local surrounding neighborhood, they did incorporate the concept of confining the pixels of consideration to a local domain about the center pixel based on a detected feature. However, the detection of that feature required the algorithm to have knowledge of pixels outside the local domain.
Fixed local surround size noise reduction filters suffer from two main problems. Algorithms employing small filter sizes take less computation time and preserve desirable low amplitude modulation signals but are also less affective at removing noise in unstructured regions. Algorithms employing large filter sizes take more computation time and are more affective at removing noise in unstructured regions but also destroy desirable low amplitude modulation signals. Radial region based noise reduction algorithms are affective at removing noise in unstructured regions but produce unwanted structured patterns in the noise cleaned images. Varying the size of the radial regions randomly can reduce the objectionability of the unwanted structured patterns but does not impact the computation time required.
It is an object of the present invention to provide a noise reduction algorithm which combines the elements of variable filter size based on image pixel data with a radial regions.
The present invention provides a noise reduction method that uses a variable shape and size filter by region growing a local neighborhood region of cleaning pixels, contiguous with the pixel of interest, based on the digital image pixel values.
This object is achieved with a method for removing noise from a pixel of a digital image channel comprising the steps of:
(a) storing an original value of the pixel of interest;
(b) using the value of the pixel of interest and neighboring contiguous pixels to determine a variable shape neighborhood region of cleaning pixels; and
(c) using the neighborhood region of cleaning pixels and the value of the pixel of interest to replace the original value of the pixel of interest with a noise cleaned pixel value.
The present invention overcomes the limitation of fixed filter size algorithms by growing a region of contiguous pixels about the pixel of interest. Since the variable size and shape of the neighborhood region of cleaning pixels is based on the supplied pixel values, low amplitude image detail is preserved while minimizing the effect of induced structured artifacts. In addition, in highly structured regions of digital images, the present invention reduces the number of evaluated pixels thus reducing the computation time.